This invention relates to telecommunications systems, and in particular to telecommunications systems capable of carrying both voice and data.
Telecommunications systems have been developed for carrying many different types of traffic. For the purposes of the present invention, these can be grouped into two different basic types of telephony system, known as xe2x80x9ccircuit-switchedxe2x80x9d and xe2x80x9cpacket-switchedxe2x80x9d.
In a circuit-switched system, a connection between source and destination is established at the beginning of a call, and reserved for the exclusive use of that call, for the duration of the call. The reserved resources may be a complete physical telephone line, but for most parts of the system it is likely to be a timeslot in a time division multiplex system and/or an allocated part of the spectrum in a (radio) frequency-division, or (optical) wavelength-division, multiplex.
In a packet-switched system, data to be transmitted from one point to another is formed into short elements (known as packets) which are each handled separately, and routed according to the availability of network resources at the time of the transmission of the individual packet. This allows a large number of individual data messages to be sent simultaneously over any particular leg of the network, by interleaving packets of different calls over that leg. It is also possible to route different parts of the data (i.e. different packets) by different parts of the network, if there is insufficient capacity on any one route for the entire message. Each data packet carries an individual signalling overhead indicating the destination of the packet, so that at each node in the network the packet can be routed towards its ultimate destination. It also carries a sequence number, to identify its position within the complete message, so that the receiving party can re-assemble the packets in the correct order at the receiving end, and can identify whether any packets have failed to arrive.
Various transaction protocols exist, such as xe2x80x9cTCP/IPxe2x80x9d (Transport Control Protocol/Internet Protocol), illustrated in FIG. 11, which shows the headers to be found in an individual packet. The initial Internet Protocol (IP) Header 110 (typically 20 bytes) defines the destination, the source, and information such as the transmission protocol to be used. There follows further header information 111 according to the indicated transmission protocol, which in this case is xe2x80x9cTCPxe2x80x9d (Transmission Control Protocol). This comprises a further 20 bytes, which includes information indicating which file transfer protocol is to be usedxe2x80x94for example SMTP (Small Message Transfer Protocol), FTP (File Transfer Protocol) or HTTP (HyperText Transfer Protocol). Further header information 112 follows, specific to the indicated protocol. The remainder of the packet comprises the information to be conveyed, known as the xe2x80x9cpayloadxe2x80x9d 115.
It is known, for example from International Patent Application no. WO95/31060, and U.S. Pat. No. 5,729,544, to select a circuit-switched or packet-switched routing for a packetised message, according to the message transfer protocol indicated in the TCP header 111. This allows short messages using the xe2x80x9cSMTPxe2x80x9d protocol to be packet-switched, whereas lengthy messages such as large computer files using the xe2x80x9cFTPxe2x80x9d protocol can be sent over a circuits-switched route. The greater amount of processing required to set up a circuit-switched link, as opposed to that required to transmit individual packets, is offset by the fact that the processing for a circuit-switched link only has to be done once.
However, this arrangement takes no account of the information content of the data to be transmitted. Certain types of information content are inherently more suitable for circuit-switching, and others are more suited to packet-switching. In particular, these information can be grouped into two principal classes, referred to herein as xe2x80x9cdelay-intolerantxe2x80x9d traffic, and xe2x80x9ccorruption-intolerantxe2x80x9d traffic.
Traditional voice telephony is xe2x80x9cdelay-intolerantxe2x80x9d. This class also includes such types of traffic as live video links etc. For such calls it is important that the time taken for the traffic to travel from source to destination remains constant, and as short as possible. This requirement is more important than the completeness of the data. For example, in a digitised voice signal there is, from the listener""s point of view, considerable redundancy in the signal, so the loss of some digital information in the voice signal can be tolerated whilst still providing an acceptable signal quality at the receiving end. However, a delay in transmission, particularly if it is not constant, can be very distracting and make conversation difficult.
In contrast, digital data signals representing text, numerical data, graphics, etc. can be transmitted with considerable variation in the length of time different parts of the data take to get from the source to the destination. In some cases different parts of the signals may be delayed by such differing amounts that the data may not arrive in the same order that it was transmitted, but the original data can be reconstructed if the order in which it is transmitted can be determined. This is achieved by labelling each packet with a position label, indicating its position in the sequence. In such transmissions the completeness of the data is more important than the time it takes to get to its destination, so it is referred in this specification to as xe2x80x9ccorruption-intolerantxe2x80x9d.
Corruption-intolerant data are preferably carried by means of a packet-switching system. The system transmits each packet as a self-contained entity and reliability of transmission takes priority over speed, so the loss of an individual packet is unlikely. If such a loss does occur, it can be identified by a gap in the sequence of position labels, and its retransmission can be requested.
However, packet-switching is inappropriate for delay-intolerant call traffic. This is firstly because there is no certainty that each packet will take the same route and therefore take the same amount of time. Furthermore, such traffic tends to be of a more continuous nature, ill suited to the intermittent nature of a packet-switched system. The division of the call into packets, (requiring each packet to have its own addressing overhead), adds a significant data overhead to the call. This also adds to the amount of processing overhead that is required to route each packet through the system. For such types of call traffic the point-to-point xe2x80x9ccircuit-switchedxe2x80x9d system of conventional telephony is more appropriate, because in such a system resources are reserved end-to-end throughout the duration of the call.
A circuit-switched system cannot offer efficient connectionless packet-switched transmission. Likewise it is difficult for packet-based systems to support delay-intolerant applications with the same quality of service as traditional circuit-switched telephony systems provide. From a network operator""s point of view it is more efficient to route corruption-intolerant (delay-tolerant) calls by way of a packet-switching system and delay-intolerant calls by way of a circuit-switching system. However, an individual user may wish to use one terminal connection for both types of transmission. The prior art system already discussed only distinguishes between protocols generally used for large file sizes (e.g. HTTP and FTP), and those for small files (SMTP). These do not relate to the information content of those files. In particular, it is possible to generate a voice signal or other delay-intolerant bit stream on, for example, a computer, and transmit it as a data stream by way of a data terminal. A particular example is the use of the xe2x80x9cInternetxe2x80x9d for carrying voice and video messages. If the communications system handles such a call as a conventional data call, the voice or picture quality perceived at the remote end can suffer from having been packet-switched rather than circuit-switched. Conversely, handling data over a circuit-switched system is both inefficient of resources, and less reliable than packet-switching.
It is desirable from the user""s point of view to have the capability to carry all types of traffic, whether delay-intolerant or corruption-intolerant, over the same system. This allows, for example, a voice message to be accompanied by supporting text (data). It also allows the user to use the same telecommunications connection for all types of traffic, avoiding the need, for example, to have two separate connections. However, the perceived quality of a delay-intolerant call can be severely impaired if such a call is packet-switched, and vice versa.
Currently there exist proposals to allow delay-intolerant applications to be run over Internet Protocols. One such application is xe2x80x9cVoice over IPxe2x80x9d (VoIP), using a protocol known as xe2x80x9cUser Datagram Protocolxe2x80x9d (UDP), which is illustrated in FIG. 12. This uses the same initial IP Header 110, as discussed in relation to FIG. 11, but in this case it is followed by a UDP Header 113 of five bytes. It may be followed by other header information 114 controlling the way in which the payload 115 is to be handled. This differs from the TCP protocols 112 (FIG. 11), which indicate how the data has been formatted, (e.g. compressed). The header information 114 indicates the priority of the packet. For example, a xe2x80x9cReservation Protocolxe2x80x9d (RSVP) may be included, which in effect reserves buffer space in the IP router and prioritises the packets so they are executed first. To avoid undue congestion and delay, a xe2x80x9cReal Time Protocolxe2x80x9d (RTP) has also been proposed. This includes a xe2x80x9ctime stampxe2x80x9d, and indicates that any packet carrying this protocol should be discarded, without being processed, if it arrives at the destination more than a predetermined time after the time indicated by the xe2x80x9ctime stampxe2x80x9d. The combined use of these two protocols allows the balance between delay and data integrity to be modified, in a packet-switched system, to be more appropriate for a delay-intolerant message. Corruption-intolerant UDP messages, for which data integrity takes priority over speed of transmission, are unaffected, as they do not carry these protocols.
Although the use of these protocols avoids causing excessive delay to a voice signal or other delay-intolerant signal, they require significant extra processing overhead, and cause some impairment of quality compared with the use of a circuit-switched system. It is therefore desirable to carry such calls over a circuit-switched system if such a system is available for all or part of the end-to-end connection.
According to the invention there is provided a method of selecting routing for a corruption-intolerant or delay-intolerant call type between the terminal and a packet-switching gateway such that a corruption-intolerant call is routed by a packet-switching system and a delay-intolerant call is routed by a circuit-switched system to or from the packet-switched gateway, wherein the presence or absence of a data protocol specific to one of the types of call is recognised and the routing between the gateway and terminal selected accordingly.
According to a second aspect of the invention there is provided apparatus for routing corruption-intolerant and delay-intolerant calls between a terminal and a packet-switching gateway such that a corruption-intolerant call is routed by a packet-switching system and a delay-intolerant call is routed by a circuit-switched system to or from the packet-switched gateway, comprising means for recognising the presence or absence of a data protocol contained in a data packet of the call, and means for routing the call between the gateway and the terminal accordingly.
Transmissions received over the packet-switched system, but which are suitable for circuit-switching, can therefore be sent via a circuit-switched route, where one is available. This routing reduces the complexity needed in the routers of the packet system as well as reducing the amount of paging that would be required if the session was set up over the packet route. In particular, in a cellular radio packet call each packet requires a separate request to locate the mobile unit, there being no continuous location update as there is with a circuit-switched cellular call.
Preferably, the method comprises the step of intercepting the packetised call set-up data, identifying if one of the said protocols is incorporated in the packet-based call, and if it has been so incorporated, switching the call from a packet-based system to a circuit-switched system. If a packet received by the packet-switching gateway over a circuit-switched system is for onward transmission to another destination served by the same circuit-switched system, the call may be redirected to the destination without passing through the packet-switching gateway, thus making the call circuit-switched throughout.
The gateway may be capable of detecting the type of destination terminal to which the call is to be transmitted, and of selecting a first mode of operation in which the protocols are retained in the transmission or a second mode of operation in which the protocols are removed, according to the destination type.
The destination of a call may be identified from an address header of the first packet of a call, so that a switched circuit can be opened between the gateway and the destination, and subsequent packets having the same header then similarly routed over the same circuit, which is maintained until the end of the message.
The apparatus may form part of a telecommunications terminal, or part of the packet-switching gateway itself.
The invention may form part of a proposed enhancement to the cellular radio system known as GSM (Global System for Mobile Telephony), which will be arranged to support both voice and data traffic. In this proposed enhancement, signals received by the fixed radio base station over the xe2x80x9cair interfacexe2x80x9d from the mobile unit are identified by the mobile unit to the base station""s operating system and routed according to whether they are conventional digitised telephone signals or xe2x80x9cmobile - IPxe2x80x9d (Internet Protocol) data signals. If they are telephone signals they are carried over the conventional cellular radio circuit-switched system. If they are Internet Protocol they are routed by way of a packet-switched system, specifically the proposed General Packet Radio System (GPRS). Similarly, voice calls destined for a mobile node can take a different route to the base station from those taken by packet based calls. This allows the GSM network to efficiently transport both packet based and circuit-switched data by sending it via the appropriate transport mechanism. Some resources are shared for both mechanisms, both over the air interface and the Base Site Controller of GSM, and both mechanisms can interrogate the Home Location Register, which contains the subscriber""s profile information and identity.
A preferred embodiment of the invention introduces a gateway node to this system. This gateway node intercepts the set-up codes in a packet, and identifies whether a RTP or RSVP protocol is present. If one of these protocols is present in the packet, the gateway node then switches over from the packet-based GPRS to the GSM circuit-switched system, allowing packetised voice calls to be carried over the circuit switched system.
The gateway node allows the use of the circuit-switched GSM system when using VoIP, thus removing the need to support RSVP and RTP protocols in the GPRS system, and allowing the delay-intolerant call to be circuit-switched within the GSM part of the call routing.
By providing this bridge between the two systems, the GSM operator can now support normal circuit-switched speech, data (both circuit-switched and packet-switched) and VoIP, with minimal modification to the network.